www.gusucode.com > XerCMS 携云PHP企业建站程序 v2015PHP源码程序 > XerCMS 携云PHP企业建站程序 v2015/XerCMS_v20150724/XerCMS_v20150724/Assets/uekit/kits/waterfall.js

    /*
 * Name:     User Experience Toolkit(UEKit)
 * Ver:      1.0.0
 * Author:   Arno
 * QQ:      1328013
 * Link:    http://www.uekit.com
*/

$.waterfall = {
     state   : true,
     page    : 1,
	maxPage : 30,
     column  : 5,
	over    : 100,
     columns : new Array(),
	source  : null,
     load    : function (container,dataSource) {	
          $.waterfall.source = dataSource;
          for(var i=0;i<$.waterfall.column;i++) {
               $.waterfall.columns[i] = 'div'.element();
			$.waterfall.columns[i].css('width:172px;margin-right:5px;display:table;float:left');
	          $(container).child($.waterfall.columns[i]);
			
          }
		$(window).bind('scroll',function() { 
		     //($().scroll('Top') + '|' + $().height() + '|' + $().scroll('Height')).log();
			$.waterfall.scroll();
		});
		return this;
     },
	scroll    : function () {
		if ($.waterfall.state && $().scroll('Top') + $().height() + $.waterfall.over > $().scroll('Height')) {			    
		     $.waterfall.page < $.waterfall.maxPage && $.waterfall.render();			
	     }
	},
     render   : function () {		   
		if (typeof(arguments[0]) == 'undefined') {
		     $.waterfall.source();return;
		}		
		
		var data = arguments[0];
		for(var i=0;i<data.length;i++) {
			$.waterfall.columns[$.waterfall.insertId()].child(data[i]);
			data[i].fade(false);
		}
		$.waterfall.page++;
		$.waterfall.state = true;
		$.waterfall.scroll();
	},
     insertId : function () {
        var height = $.waterfall.columns[0].height();var id = 0;var temp;
        for(var i=1;i<$.waterfall.column;i++) {
             temp = $.waterfall.columns[i].height();
             if(temp < height) {
	            id = i;height = temp;
	        }
        }
        //(id + '|' + height).log();
        return id;
    } 
}